home *** CD-ROM | disk | FTP | other *** search
/ Aminet 8 / Aminet 8 (1995)(GTI - Schatztruhe)[!][Oct 1995].iso / Aminet / comm / tcp / ATCP_sdk_40_gc.lha / AmiTCP-4.0 / README.gcc < prev   
Text File  |  1995-06-27  |  3KB  |  62 lines

  1.  
  2. This code is strictly BETA!!. It works with MuiADT and Pine,httpd but does not
  3. guarantee it will work with anything else. You are free to modify/correct the code as
  4. long as you mail me the changes.
  5.  
  6. This compiles with gcc only!! Almost all of the SASC stuff was removed. If you
  7. want to compile with SASC, get the original API archive.
  8.  
  9. This archive includes the src+include+extras for the new amitcp-gcc library only plus
  10. the old archive I uploaded.
  11.  
  12. The format of the archive has changed. People complained about where the headers go.
  13. I reorganized the include directories to comply with the GCC setup. Also I completely
  14. recompiled the archive to make sure things did compile. Some people complained about
  15. declarations mishaps. I think they are all vanished now.
  16.  
  17.  
  18. Good news! THE NEW CODE DOES WORK WITH SERVERS!!. I have compiled imapd and httpd1.4.1
  19. successfully with a couple of additions mainly:
  20.  
  21.   int s=init_inet_daemon();
  22.   set_socket_stdio(s);
  23.  
  24. at the beginning of main().
  25.  
  26. Look out for the ReleaseSocket/ReleaseCopyofSocket function. They might not
  27. work at all. I have not tested them since UNIX don't have equivalent calls.
  28. Also you cannot do a select() between sockets and nonsockets. For sockets use
  29. WaitSelect() as usual.
  30.  
  31. I found 2 MISTAKES in the archive. The first is ug_SetupContextTags(). It does
  32. NOT take a program name argument. Also no syslog() function was supplied. I
  33. made one using vprintf().
  34.  
  35. Enclosed are modified gcc include files in the directory gnu/include and
  36. gnu/os-include. You can copy over the ones in gnu:include/. These includes are
  37. based upon the ones found in gcc263inclib.lha. If you have the new V41 includes
  38. you will have to check what changes there are. You don't have to check the
  39. gnu/os-include directory since those are new files.
  40.  
  41. In the main program file, add the following line:
  42.  
  43. const char *_ProgramName = "progname";
  44.  
  45. where progname is your program name. _ProgramName is needed so that the
  46. autoinit function can set up the syslog file correctly.
  47.  
  48. To compile, specify "-D__AMITCP__ -DNO_INLINE_STDARG" + all the other usual
  49. entries on the commandline. To use the old socket archive (source in netlib),
  50. add -DOLD to the commandline.
  51.  
  52. To link specify "libc.a -lnewamitcp -lamiga -lauto" + all the other usual
  53. entries. To use the original library use "libc.a -lamitcp -lamiga -lauto".
  54. (Someone figure out why I need to link libc.a first. Without it, things behave
  55. very strangely or refuse to function. I think its the autoinit stuff.)
  56.  
  57. A custom version of ixemul 40.4 libc.a and ixemul.41.0 is supplied. (The 40.4 version doesn't have the wrappers for ixemul's
  58. pseudo-TCP functions). The only thing different with the 41.0 libc.a is the deletion of fstat.o.
  59.  
  60. Happy networking.
  61.  
  62.